﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace  FinanSoft.Entities

{
    public class Season
    {
        #region Constructors
        /// <summary>
        /// Constructor de la clase. Recibe parametros para todos los atributos de la temporada
        /// </summary>
        public Season(int id, string name, int period, int status, DateTime sdate, DateTime edate, DateTime iniDueDate, DateTime endDueDate)
        {
            this.Id = id;
            this.Name = name;
            this.Period = period;
            this.Status = status;
            this.StartDate = sdate;
            this.EndDate = edate;
            this.InitialDueDate = iniDueDate;
            this.EndDueDate = endDueDate;
            
        }

        /// <summary>
        /// Constructor por defecto de la clase
        /// </summary>
        public Season()
        {
           
        }
        #endregion

        #region Properties
        /// <summary>
        /// Entero que identifica de manera unica a la temporada
        /// </summary>
        public int Id
        {
            get;
            set;
        }

        /// <summary>
        /// Periodo al que pertenece la temporada
        /// </summary>
        public int Period
        {
            get;
            set;
        }

        /// <summary>
        /// String con el nombre de la temporada
        /// </summary>
        public string Name
        {
            get;
            set;
        }

        /// <summary>
        /// Estado de la temporada
        /// </summary>
        public int Status
        {
            get;
            set;
        }

        /// <summary>
        /// Fecha de inicio de la temporada
        /// </summary>
        public DateTime StartDate
        {
            get;
            set;
        }

        /// <summary>
        /// Fecha de cierre de la temporada
        /// </summary>
        public DateTime EndDate
        {
            get;
            set;
        }


        /// <summary>
        /// Fecha de vencimiento inicial de la temporada
        /// </summary>
        public DateTime InitialDueDate
        {
            get;
            set;
        }

        /// <summary>
        /// Fecha de vencimiento final de la temporada
        /// </summary>
        public DateTime EndDueDate
        {
            get;
            set;
        }
        #endregion
    }
}
